In color management, a device may convert colors of input image data to a color space of an output device. For example, a printer may have a CMYK color space that is used to represent the image data using various levels of Cyan (C), Magenta (M), Yellow (Y), and Key black (K). Before the image data is printed, the input image data is converted to the gamut of the CMYK printer. However, precise representation of the image data is generally not possible as information may be lost or misrepresented when the color is converted from its original color space to the new color space of the printer. Other presentation systems that may perform color conversion include monitors, printers, cameras, and scanners.
In certain instances, color conversion is performed between like color spaces, such as CMYK to CMYK. Such a color conversion may appear to be trivial. However, the process generally requires conversion from an input CMYK color space to a perceptual color space (e.g., a “Lab” color space) and then to the output CMYK color space. A Lab color space is visualized as a three dimensional color space having a dimension for Lightness (L), and having color opponent dimensions (a) and (b), where every color that humans can see is uniquely located. Lab color spaces are perceptual color spaces that have been designed to be substantially perceptually uniform. In perceptually uniform color spaces, the Euclidean distance in the space corresponds to the perceptual distance between colors perceived by the human eye. For example, the human visual system (HVS) is sensitive to color changes in neutral color areas, and relatively insensitive to color changes in highly saturated color areas. Thus, in a Lab color space (unlike CMYK color spaces), the Euclidean distance between saturated colors is often smaller than the Euclidean distance between neutral colors.
A color conversion model can be generated to convert CMYK color values to Lab color values, and vice versa. Generally, the relationship between a CMYK color space and a Lab color space (e.g., the CIE 1976 (L*, a*, b*) color space) is nonlinear due to the interactions of cyan, magenta, yellow, and black planes as they are converted into the three dimensions of Lab space. Because color conversion is processing-intensive, pre-computed color profiles that describe the characteristics of color spaces are often used to convert color image data from device-independent color spaces (e.g., CIEL*a*b*) to device-dependent color spaces (e.g., a CMYK color space) and vice versa. These color profiles may comprise lookup tables (LUTs) used to quickly convert color data from one color space to another.
When converting from a first CMYK color space to a second CMYK color space via a device-independent color space, the black level (also known as the Gray Component Replacement (GCR) level) of image data is generally not preserved. This is because the GCR value in the source CMYK color space, represented by a K value, is separated into the color components of the Lab space, and then these color components are integrated into a new output K value for the new color space. This is unfortunate because the black levels for an image often comprise the most important information in an image, and users typically find changes in black levels undesirable. For example, an image to be converted may include black text. It is not desirable to alter the black levels of this text in the image because this affects the readability of the text. Thus, it is desirable to preserve the source GCR of color data in an output CMYK color space.
As currently practiced, K values may be preserved in situations when the remaining C, M, and Y color components in CMYK space are zero. Color conversion systems often refrain from preserving black levels when K values are accompanied by C, M, and Y values. This is because forcing the K value to remain the same while converting C, M, and Y colors with standard color management techniques results in an undesirable perceptual color difference between the original CMYK color and the converted CMYK color. Thus, preserving the source GCR for image data generally results in a loss of color accuracy. Therefore, there is a need to preserve black levels during a CMYK to CMYK color conversion while minimizing the perceptual distance between source colors and converted colors.